#include "gd32f3x0.h"
#include "DevicesDelay.h"
#include "DevicesPower.h"



void vPowerInit(void)
{
    /* enable the GPIO clock */
    rcu_periph_clock_enable(RCU_GPIOB);

    gpio_bit_reset(POWER_3V3_GPIO_Port, POWER_3V3_Pin);

    /* configure GPIO pin */
    gpio_mode_set(POWER_3V3_GPIO_Port, GPIO_MODE_OUTPUT, GPIO_PUPD_NONE, POWER_3V3_Pin);
    gpio_output_options_set(POWER_3V3_GPIO_Port, GPIO_OTYPE_PP, GPIO_OSPEED_10MHZ, POWER_3V3_Pin);

    vPowerClose(POWER_ALL);
}

void vPowerOpen(uint16_t usNumber)
{
    if(usNumber & POWER_3V3)
    {
        POWER_3V3_ENABLE();
    }
}

void vPowerClose(uint16_t usNumber)
{
    if(usNumber & POWER_3V3)
    {
        POWER_3V3_DISABLE();
    }
}
